Real-Time Garbage Collection in Multi-Threaded Systems on a Single Processor

نویسنده

  • Fridtjof Siebert
چکیده

We show the difficulties that arise for the implementation of a real-time garbage collector in a multi-threaded system. A mechanism for synchronization between threads and the garbage collector activities is proposed for a single processor system. It is shown how this mechanism can be used to maintain exact information on roots, to implement efficient write-barriers, to do incremental or even constanttime root-scanning and to guarantee short pre-emption time of garbage collector activity. Special aspects of an implementation for Java that are affected by this mechanism will also be addressed. Finally, experimental data is presented to show that the proposed mechanisms can efficiently be used in real programs.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Basic System-Level Software for a Single-Core MERASA Processor

In the EC FP-7 MERASA project a hard real-time capable multi-core processor is developed. The system-level software represents an abstraction layer between application software and embedded hardware. It has to provide basic functions of a real-time operating system. This report presents requirements for a multi-threaded hard real-time capable system-level software in embedded systems and the tr...

متن کامل

A Concurrent Trace-based Just-In-Time Compiler for Single-threaded JavaScript

JavaScript is emerging as the ubiquitous language of choice for web browser applications. These applications increasingly execute on embedded mobile devices, and thus demand responsiveness (i.e., short pause times for system activities, such as compilation and garbage collection). To deliver responsiveness, web browsers, such as Firefox, have adopted trace-based Just-In-Time (JIT) compilation. ...

متن کامل

Implementation of a Multi - Processor Garbage Collector in

ProcessBase is a new persistent programming language targeted to support process modelling applications. It forms a central part of a compliant systems architecture, i.e. an architecture that is compliant to the needs of the running application. The ProcessBase Abstract Machine (PBAM) is the execution engine for the language. It uses a heapbased storage architecture together with two contiguous...

متن کامل

Incremental Multi-threaded Garbage Collection on Virtual Shared Memory Architectures

This paper describes a multi-threaded and incremental garbage collector operating on shared memory architectures. The technique was developed for parallel implementations of the language LCS, a high level parallel programming language. An incremental, page trap based, collection algorithm operates locally on each of the processors. Processors alternatively plays the role of mutator and collecto...

متن کامل

Anaconda a Real-time Control-flow/data-flow Hybrid Processor

Typically real-time applications are written in a multi-threaded language and are executed on single threaded control-ow (von Neumann) processors. A software scheduler is used to switch between the application's multiple threads, thereby simulating a multi-threaded processor. Unfortunately software scheduling is problematic if real-time constraints are to be guaranteed and therefore static (pre...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1999